/* 
 * File:   lz77.h
 * Author: ariel
 */

#ifndef LZ77_H

#include <inttypes.h>

#define	LZ77_H

#define ACCION_COMPRIMIR 1
#define ACCION_DESCOMPRIMIR 2
#define ACCION_DESCONOCIDA 3

#define ERR_ARCHIVO_NO_EXISTE 1
#define ERR_ARCHIVO_NOMBRE_INVALIDO 2

#define BITS_POSICION 13
#define BITS_LONGITUD 4

#include "../ConfigLZ.h"   // definicion de los parametros configurables

typedef struct {
  uint32_t buffer;
  unsigned int bitsOcupados;
} BufferProceso;

int lz77(int accion, const char* archivo, const char* archivoSalida);

#endif	/* LZ77_H */
